메인 콘텐츠로 이동하기
  1. Hugo & Congo 문서/

설정

10 분

Congo는 많은 사용자 지정을 허용하는 테마이며, 최신 Hugo 기능을 사용하여 구성하기 쉽습니다.

Congo는 기본 구성을 제공하여 기본 블로그 또는 정적 웹사이트를 실행할 수 있습니다.

테마에 제공되는 구성 파일은 TOML 형식으로 제공되며, 원하는 경우 YAML 또는 JSON으로 변환할 수 있습니다.

기본 테마 구성은 각 파일에 문서화되어 있으므로 필요에 따라 설정을 자유롭게 조정할 수 있습니다.

설치 지침에서 설명한 대로, 테마 구성을 조정하려면 Hugo 프로젝트의 config/_default/ 폴더에 있는 파일을 수정하고 프로젝트 루트에 있는 config.toml 파일을 삭제하세요.

사이트 구성 #

표준 Hugo 구성 변수는 테마 전체에서 존재하지만, 최상의 경험을 위해 특정 설정이 필요합니다.

사이트 설정은 config/_default/config.toml 파일을 통해 관리됩니다. 아래 표는 Congo가 활용하는 모든 설정을 간략하게 설명합니다.

이 표에 제공된 변수 이름은 표준 TOML 데이터 구조를 단순화하기 위해 점 표기법을 사용합니다(예: outputs.home[outputs] home을 참조합니다).

Name Default Description
theme "congo" Hugo 모듈을 사용하는 경우 이 구성 값을 제거해야 합니다. 모든 다른 설치 유형의 경우, 테마가 작동하려면 이 값을 congo로 설정해야 합니다.
baseURL Not set 웹사이트의 기본 URL입니다.
defaultContentLanguage "en" 이 값은 테마 구성 요소와 콘텐츠의 기본 언어를 결정합니다. 지원되는 언어 코드는 언어 및 i18n 섹션을 참조하세요.
enableRobotsTXT true 활성화되면 사이트 루트에 robots.txt 파일이 생성되어 검색 엔진이 전체 사이트를 크롤링할 수 있습니다. 자체 만든 robots.txt 파일을 제공하려면 false로 설정하고 static 디렉토리에 파일을 배치하세요. 완전 제어를 위해 사용자 정의 레이아웃을 생성하여 이 파일을 생성할 수 있습니다.
pagination.pagerSize 10 각 페이지에 나열된 문서 수입니다.
summaryLength 0 front matter에 제공되지 않은 경우 문서 요약을 생성하는 데 사용되는 단어 수입니다. 이 값은 0이면 요약은 숨겨집니다.
outputs.home ["HTML", "RSS", "JSON"] 사이트에 대해 생성되는 출력 형식입니다. Congo는 모든 테마 구성 요소가 올바르게 작동하도록 HTML, RSS 및 JSON이 필요합니다.
permalinks Not set Hugo 문서에서 정규화 구성을 참조하세요.
taxonomies Not set 콘텐츠 정리 섹션을 참조하세요.

언어 및 i18n #

Congo는 전체 다국어 웹사이트를 위해 최적화되어 있으며, 테마 자산은 기본적으로 여러 언어로 번역됩니다. 언어 구성을 통해 방문자의 현지 언어로 콘텐츠의 여러 버전을 생성하여 사이트를 사용자 지정할 수 있습니다.

테마는 현재 다음 언어를 기본적으로 지원합니다.

Language Code
English (default) en
Arabic ar
Bengali bn
Bulgarian bg
Chinese - Simplified zh-Hans
Chinese - Traditional zh-Hant
Czech cs
Dutch nl
Finnish fi
French fr
German de
Hebrew he
Hungarian hu
Indonesian id
Italian it
Japanese ja
Korean ko
Norwegian - Bokmål nb
Polish pl
Portuguese (Brazil) pt-br
Portuguese (Portugal) pt-pt
Romanian ro
Russian ru
Slovak sk
Spanish (Spain) es
Swedish sv
Tamil ta
Turkish tr
Ukrainian uk
Vietnamese vi

기본 번역은 i18n/[code].yaml에 있는 번역 문자열을 포함하는 사용자 지정 파일로 재정의할 수 있습니다. 또한 이 방법을 사용하여 새로운 언어를 추가할 수 있습니다. 커뮤니티와 새로운 번역을 공유하고 싶다면 pull request를 열어주세요.

구성 #

최대한 유연하게 하기 위해, 웹사이트에 있는 각 언어에 대해 언어 구성 파일을 생성해야 합니다. 기본적으로 Congo는 config/_default/languages.en.toml에 영어 언어 구성을 포함합니다.

기본 파일은 추가 언어를 생성하기 위한 템플릿으로 사용할 수 있으며, 영어 이외의 언어로 웹사이트를 작성하고 싶다면 파일 이름을 변경할 수 있습니다. 파일 이름을 languages.[language-code].toml 형식으로 지정하세요.

Note: 사이트 구성에 있는 defaultContentLanguage 매개변수가 언어 구성 파일의 언어 코드와 일치하는지 확인하세요.
Name Default Description
languageCode "en" 이 파일의 Hugo 언어 코드입니다. 상위 수준 언어(예: en) 또는 하위 변형(예: en-AU)일 수 있으며, 파일 이름의 언어 코드와 일치해야 합니다.
languageName "English" 언어의 이름입니다.
languageDirection "ltr" 이 언어가 RTL 언어인지 여부입니다. "rtl"로 설정하여 콘텐츠를 오른쪽에서 왼쪽으로 재배열합니다. Congo는 RTL과 LTR 언어를 동시에 사용할 수 있으며, 둘 다 지원합니다.
weight 1 언어 순서를 결정합니다. 다국어 사이트를 빌드할 때 사용됩니다.
title "Congo" 웹사이트의 제목입니다. 이는 사이트 헤더와 푸터에 표시됩니다.
copyright Not set 웹사이트 푸터에 표시될 저작권 메시지를 포함하는 Markdown 문자열입니다. 제공되지 않으면 Congo는 사이트 title을 사용하여 자동으로 저작권 문자열을 생성합니다.
params.dateFormat "2 January 2006" 이 언어에서 날짜가 형식화되는 방법입니다. 허용되는 형식은 Hugo 문서를 참조하세요.
params.mainSections Not set 최근 문서 목록에 표시될 섹션입니다. 제공되지 않으면 문서 수가 가장 많은 섹션이 사용됩니다.
params.description Not set 웹사이트 설명입니다. 이는 사이트 메타데이터에 사용됩니다.
params.author.name Not set 저자의 이름입니다. 이는 문서 푸터에 표시되며, 프로필 레이아웃을 사용할 때 홈페이지에 표시됩니다.
params.author.image Not set 저자의 이미지 파일 경로입니다. 이미지는 1:1 비율이어야 하며, 사이트의 assets/ 폴더에 배치되어야 합니다.
params.author.headline Not set 저자의 제목을 포함하는 Markdown 문자열입니다. 이는 저자의 이름 아래에 프로필 홈페이지에 표시됩니다.
params.author.bio Not set 저자의 소개를 포함하는 Markdown 문자열입니다. 이는 문서 푸터에 표시됩니다.
params.author.links Not set 저자의 세부 정보와 함께 표시할 링크입니다. 이 파일에는 예시 링크가 포함되어 있으며, 이를 쉽게 주석 처리하여 활성화할 수 있습니다. 링크는 배열에 표시되는 순서대로 표시됩니다. 사용자 정의 링크는 assets/icons/에 해당 SVG 아이콘 자산을 제공하여 추가할 수 있습니다.

Congo는 언어별 메뉴 구성을 지원합니다. 메뉴 구성 파일은 언어 파일과 동일한 명명 형식을 따릅니다. 파일 이름에 언어 코드를 제공하여 Hugo에게 파일이 관련된 언어를 알려주세요.

메뉴 구성 파일은 menus.[language-code].toml 형식으로 명명됩니다. 항상 메뉴 구성에 사용된 언어 코드가 언어 구성과 일치하는지 확인하세요.

시작하기 섹션은 이 파일의 구조에 대해 더 자세히 설명합니다. 또한 Hugo 메뉴 문서에서 더 많은 구성 예시를 참조할 수 있습니다.

테마 매개변수 #

Congo는 테마 기능을 제어하는 많은 구성 매개변수를 제공합니다. 아래 표는 config/_default/params.toml 파일에서 사용 가능한 모든 매개변수를 간략하게 설명합니다.

많은 문서 기본값은 문서 단위로 재정의할 수 있습니다. 자세한 내용은 Front Matter 섹션을 참조하세요.

Name Default Description
colorScheme "congo" 사용할 테마 색상 테마입니다. 유효한 값은 congo (기본값), avocado, cherry, fire, ocean, sapphireslate입니다. 자세한 내용은 색상 테마 섹션을 참조하세요.
defaultThemeColor "#FFFFFF" theme-color 메타 태그에 사용할 원래 값(스크립트가 수정하기 전)입니다. 메타 태그는 테마(light 또는 dark)에 따라 변경되지만, 이 태그를 표시하는 서비스에 유용합니다(예: Discord).
defaultAppearance "light" 기본 테마 모양, light 또는 dark.
autoSwitchAppearance true 테마 모양이 방문자의 운영 체제 기본 설정에 따라 자동으로 변경되는지 여부. false로 설정하여 사이트가 항상 defaultAppearance을 사용하도록 강제합니다.
enableSearch false 사이트 검색이 활성화되는지 여부. true로 설정하여 검색 기능을 활성화합니다. 검색 기능은 사이트 구성에서 outputs.home 설정이 올바르게 설정되어 있어야 합니다.
enableCodeCopy false <code> 블록에 복사-클립보드 버튼이 활성화되는지 여부. 코드 복사가 제대로 작동하려면 highlight.noClasses 매개변수를 false로 설정해야 합니다. 자세한 내용은 다른 구성 파일 섹션을 참조하세요.
enableImageLazyLoading true 브라우저에서 이미지를 지연 로드할지 여부.
enableImageWebp true 이미지를 더 빠른 WebP 형식으로 출력할지 여부.
enableQuicklink true Quicklink 라이브러리를 사이트에 포함할지 여부. Quicklink은 사용자의 뷰포트를 기반으로 링크를 선호하고 더 빠른 페이지 탐색을 촉진합니다.
robots Not set 사이트를 처리하는 방법을 나타내는 문자열. 설정되면 페이지 헤드에 출력됩니다. 유효한 값은 Google의 문서를 참조하세요.
fingerprintAlgorithm "sha256" 이미지 등 정적 자산을 지문화할 때 사용되는 해시 알고리즘을 나타내는 문자열. 유효한 값은 md5, sha256, sha384sha512입니다.
header.layout "basic" 페이지 헤더 및 메뉴의 레이아웃. 유효한 값은 basic, hamburger, hybrid 또는 custom입니다. custom으로 설정되면 사용자 정의 레이아웃을 만들어야 합니다. /layouts/partials/header/custom.html 파일을 만들어야 합니다.
header.logo Not set assets/ 폴더 내의 사이트 로고 파일의 상대 경로. 로고 파일은 2x 해상도로 제공되어야 하며, 모든 이미지 차원을 지원합니다.
header.logoDark Not set header.logo 매개변수와 동일하지만, 이 이미지는 어두운 모드가 활성화될 때 사용됩니다.
header.showTitle true 사이트 제목이 헤더에 표시되는지 여부.
footer.showCopyright true 사이트 푸터에 저작권 문자열을 표시할지 여부. 이 문자열은 언어 및 i18n 섹션에서 copyright 매개변수를 사용하여 사용자 지정할 수 있습니다.
footer.showThemeAttribution true 사이트 푸터에 “powered by” 테마 소재 표시 여부. 이 메시지를 비활성화하려면 false로 설정하세요. 사이트에 적절한 위치에 테마 소재를 표시하는 것을 고려하세요(예: 사이트 정보 페이지).
footer.showAppearanceSwitcher false 사이트 푸터에 모양 전환기를 표시할지 여부. 브라우저의 로컬 저장소를 사용하여 방문자의 선호도를 유지합니다.
footer.showScrollToTop true true로 설정되면 상단으로 스크롤 화살표가 표시됩니다.
homepage.layout "page" 홈페이지의 레이아웃. 유효한 값은 page, profile 또는 custom입니다. custom으로 설정되면 /layouts/partials/home/custom.html 파일을 만들어야 합니다. 자세한 내용은 홈페이지 레이아웃 섹션을 참조하세요.
homepage.showRecent false 홈페이지에 최근 문서 목록을 표시할지 여부.
homepage.recentLimit 5 homepage.showRecenttrue로 설정되면 표시할 최근 문서의 최대 수.
article.showDate true 문서 날짜가 표시되는지 여부.
article.showDateUpdated false 문서가 업데이트된 날짜가 표시되는지 여부.
article.showAuthor true 문서 푸터에 저자 상자가 표시되는지 여부.
article.showBreadcrumbs false 문서 헤더에 브레드크럼스가 표시되는지 여부.
article.showDraftLabel true --buildDrafts 플래그로 사이트를 빌드할 때 문서 옆에 초안 표시기가 표시되는지 여부.
article.showEdit false 문서 내용을 수정하는 링크를 표시할지 여부.
article.editURL Not set article.showEdit이 활성화되면 수정 링크의 URL.
article.editAppendPath true article.showEdit이 활성화되면 현재 문서의 경로가 article.editURL에 설정된 URL에 추가되어야 하는지 여부.
article.showHeadingAnchors true 문서 내에서 제목 앵커 링크가 표시되는지 여부.
article.showPagination true 문서 푸터에 다음/이전 문서 링크가 표시되는지 여부.
article.invertPagination false 다음/이전 문서 링크의 방향을 뒤집을지 여부.
article.showReadingTime true 문서 읽는 시간이 표시되는지 여부.
article.showTableOfContents false 문서에 목차가 표시되는지 여부.
article.showTaxonomies false 이 문서와 관련된 태그가 표시되는지 여부.
article.showWordCount false 문서 단어 수가 표시되는지 여부.
article.showComments false 문서 푸터 뒤에 댓글 부분이 포함되는지 여부.
article.sharingLinks Not set 문서 끝에 표시할 공유 링크 배열. 유효한 옵션은 facebook, x-twitter, mastodon, pinterest, reddit, linkedin, email, threads, telegramline입니다. 제공되지 않거나 false로 설정되면 링크가 표시되지 않습니다.
list.showBreadcrumbs false 목록 페이지 헤더에 브레드크럼스가 표시되는지 여부.
list.showTableOfContents false 목록 페이지에 목차가 표시되는지 여부.
list.showTaxonomies false 이 문서와 관련된 태그가 목록 페이지에 표시되는지 여부.
list.showSummary false 문서 요약이 목록 페이지에 표시되는지 여부. 목록 페이지에 요약이 제공되지 않으면 사이트 구성에서 summaryLength 매개변수를 사용하여 자동으로 생성됩니다.
list.groupByYear true 목록 페이지에서 문서가 연도별로 그룹화되는지 여부.
list.paginationWidth 1 페이지 목록이 잘리는 경우 현재 페이지 양쪽에 출력할 페이지 링크 수. 1의 너비는 페이지 목록이 잘리는 경우 현재 페이지 양쪽에 하나의 링크를 출력합니다. 현재, 처음 및 마지막 페이지에 대한 링크는 항상 표시되며, 이 값에 추가됩니다.
sitemap.excludedKinds ["taxonomy", "term"] 생성된 /sitemap.xml 파일에서 제외할 콘텐츠 유형. 유효한 값은 Hugo 문서를 참조하세요.
taxonomy.showTermCount true 태그 목록에 태그 내 문서 수가 표시되는지 여부.
fathomAnalytics.site Not set Fathom Analytics에서 생성한 사이트 코드. 자세한 내용은 분석 섹션을 참조하세요.
plausibleAnalytics.domain Not set 추적할 웹사이트의 도메인. 자세한 내용은 분석 섹션을 참조하세요.
plausibleAnalytics.event Not set Plausible api event proxied URL. 자세한 내용은 분석 섹션을 참조하세요.
plausibleAnalytics.script Not set Plausible analysis script proxied URL. 자세한 내용은 분석 섹션을 참조하세요.
umamiAnalytics.site Not set Umami Analytics 추적 코드. 자세한 내용은 분석 섹션을 참조하세요.
umamiAnalytics.region eu Umami Analytics 서버 지역을 선택합니다. 값은 eu 또는 us일 수 있습니다.
verification.google Not set 사이트 확인 문자열. 자세한 내용은 분석 섹션을 참조하세요.
verification.bing Not set 사이트 확인 문자열. 자세한 내용은 분석 섹션을 참조하세요.
verification.pinterest Not set 사이트 확인 문자열. 자세한 내용은 분석 섹션을 참조하세요.
verification.yandex Not set 사이트 확인 문자열. 자세한 내용은 분석 섹션을 참조하세요.

다른 구성 파일 #

테마는 markup.toml 구성 파일도 포함합니다. 이 파일에는 Hugo가 Congo로 생성된 사이트를 올바르게 구성하기 위한 몇 가지 중요한 매개변수가 포함되어 있습니다.

항상 이 파일이 config 디렉토리에 있고 필요한 값이 설정되어 있는지 확인하세요. 그렇지 않으면 특정 기능이 올바르게 작동하지 않을 수 있으며, 의도하지 않은 동작이 발생할 수 있습니다.

# config/_default/markup.toml

[goldmark]
[goldmark.renderer]
  unsafe = true

[highlight]
  noClasses = false

[tableOfContents]
  startLevel = 2
  endLevel = 3